Example code-snippet for the functions FindFirst, FindNext FindClose, ImgInfo, ImgToClipbrd, ThumbnailImgToClipbrd .
***Ohne Gewhr/without warranty***

HINSTANCE dbswinlib=0;

// Bildinformationen holen/ Gather image information
int SearchDBSWinImages(char* patnr)
{
  int count=0;
 if (dbswinlib==0)
  {
    dbswinlib=LoadLibrary("DBSEXPW.DLL");
  }
  if ((int)dbswinlib<32)
  {
    MessageBox(0,"cant load dbsexpw.dll","",MB_OK|MB_TASKMODAL|MB_ICONEXCLAMATION);
    return 0;
  }

  int  (__stdcall *DBFindFirst)(char* patnr,char* imgid,char* imgtyp,char* imgdiag,char* imgdate);
  void (__stdcall *DBFindNext) (int handle,char* imgid,char* imgtyp,char* imgdiag,char* imgdate);
  void (__stdcall *DBFindClose)(int handle);
  int (__stdcall *ImgInfo)(int handle,char* imgid,char* whichinfo,int buflen,char* outp);
  if (((FARPROC)DBFindFirst = GetProcAddress(dbswinlib,"FindFirst"))==NULL)
  {
    MessageBox(0,"FindFirst-Adress not found","",MB_OK|MB_TASKMODAL|MB_ICONEXCLAMATION);
    return 0;
  }
  if (((FARPROC)DBFindNext = GetProcAddress(dbswinlib,"FindNext"))==NULL)
  {
    MessageBox(0,"FindNext-Adress not found","",MB_OK|MB_TASKMODAL|MB_ICONEXCLAMATION);
    return 0;
  }
  if (((FARPROC)DBFindClose = GetProcAddress(dbswinlib,"FindClose"))==NULL)
  {
    MessageBox(0,"FindClose-Adress not found","",MB_OK|MB_TASKMODAL|MB_ICONEXCLAMATION);
    return 0;
  }
  (FARPROC)ImgInfo = GetProcAddress(dbswinlib,"ImgInfo");

  char imgid[100],imgtyp[100],imgdiag[200],imgdate[100];
  int h=DBFindFirst(szpatnr,imgid,imgtyp,imgdiag,imgdate);
//Loop for all images
  while (h>0 && *imgid)
  {
    count++;
    //Do something with given data  (imgid,imgtyp,imgdiag,imgdate)
........

    //get Create-time of image, if function found
    if (ImgInfo && ImgInfo(h,imgid,"CreateDateTime",sizeof(strng),strng)>0)
    { //Do something with data  (format yyyymmddhhnnss)
      ..........
    }
    DBFindNext(h,imgid,imgtyp,imgdiag,imgdate);
  }
  DBFindClose(h);
  return count;
}

// Ein Bild ins Clipboard holen/ Get an image/Thumbnail  to clipboard
int GetDBSWINImages(char* imgid,bool thumbnail)
{
  if (dbswinlib==0)
    dbswinlib=LoadLibrary("DBSEXPW.DLL");
  if ((int)dbswinlib<32)
  {
    MessageBox(0,"cant load dbsexpw.dll","",MB_OK|MB_TASKMODAL|MB_ICONEXCLAMATION);
    return 0;
  }
  int  (__stdcall *DBImgToClipbrd)(char* imgid);
  int  (__stdcall *TNDBImgToClipbrd)(char* imgid);
  if (((FARPROC)DBImgToClipbrd = GetProcAddress(dbswinlib,"ImgToClipbrd"))==NULL)
  {
    MessageBox(0,"ImgToClipbrd not found","",MB_OK|MB_TASKMODAL|MB_ICONEXCLAMATION);
    return 0;
  }
  (FARPROC)TNDBImgToClipbrd = GetProcAddress(dbswinlib,"ThumbnailImgToClipbrd");
  char szimgid[200];
  lstrcpy(szimgid,imgid);
  int erg;
  if (thumbnail && TNDBImgToClipbrd)
    erg=TNDBImgToClipbrd(szimgid);
  else erg=DBImgToClipbrd(szimgid);
  return erg>0 ? 1:0;
}

.........
//DLL freigeben/Free Library
if ((int)dbswinlib>=32)
{
  FreeLibrary ( dbswinlib );
}
